package com.fr.report.adhoc;

import com.fr.base.Style;
import com.fr.base.background.ColorBackground;
import com.fr.base.core.StyleUtils;
import java.awt.Color;

public abstract class AbstractADHOCStyle
  implements ADHOCStyle
{
  protected Style titleStyle = Style.getInstance();
  protected Style subTitleStyle = Style.getInstance();
  protected Style reportHeaderStyle = Style.getInstance();
  protected Style rowHeaderStyle = Style.getInstance();
  protected Style columnHeaderStyle = Style.getInstance();
  protected Style reportCotentStyle = Style.getInstance();
  protected Style summaryStyle = Style.getInstance();
  protected int rowTitleHeight = 40;
  protected int columnWidth = 96;

  protected void initStyles()
  {
    this.titleStyle = StyleUtils.setReportFontSize(this.titleStyle, 20);
    this.titleStyle = StyleUtils.boldReportFont(this.titleStyle);
    this.titleStyle = this.titleStyle.deriveHorizontalAlignment(0);
    this.subTitleStyle = this.subTitleStyle.deriveHorizontalAlignment(4);
    this.reportHeaderStyle = this.reportHeaderStyle.deriveBorder(1, Color.BLACK, 1, Color.BLACK, 1, Color.BLACK, 1, Color.BLACK);
    this.reportHeaderStyle = this.reportHeaderStyle.deriveBackground(ColorBackground.getInstance(new Color(153, 204, 255)));
    this.rowHeaderStyle = this.rowHeaderStyle.deriveBorder(1, Color.BLACK, 1, Color.BLACK, 1, Color.BLACK, 1, Color.BLACK);
    this.columnHeaderStyle = this.columnHeaderStyle.deriveBorder(1, Color.BLACK, 1, Color.BLACK, 1, Color.BLACK, 1, Color.BLACK);
    this.reportCotentStyle = this.reportCotentStyle.deriveBorder(1, Color.BLACK, 1, Color.BLACK, 1, Color.BLACK, 1, Color.BLACK);
    this.summaryStyle = this.summaryStyle.deriveBorder(1, Color.BLACK, 1, Color.BLACK, 1, Color.BLACK, 1, Color.BLACK);
  }

  public Style getTitleStyle()
  {
    return this.titleStyle;
  }

  public void setTitleStyle(Style paramStyle)
  {
    this.titleStyle = paramStyle;
  }

  public Style getSubTitleStyle()
  {
    return this.subTitleStyle;
  }

  public void setSubTitleStyle(Style paramStyle)
  {
    this.subTitleStyle = paramStyle;
  }

  public Style getReportHeaderStyle()
  {
    return this.reportHeaderStyle;
  }

  public void setReportHeaderStyle(Style paramStyle)
  {
    this.reportHeaderStyle = paramStyle;
  }

  public Style getRowHeaderStyle()
  {
    return this.rowHeaderStyle;
  }

  public void setRowHeaderStyle(Style paramStyle)
  {
    this.rowHeaderStyle = paramStyle;
  }

  public Style getColumnHeaderStyle()
  {
    return this.columnHeaderStyle;
  }

  public void setColumnHeaderStyle(Style paramStyle)
  {
    this.columnHeaderStyle = paramStyle;
  }

  public Style getReportCotentStyle()
  {
    return this.reportCotentStyle;
  }

  public void setReportCotentStyle(Style paramStyle)
  {
    this.reportCotentStyle = paramStyle;
  }

  public Style getSummaryStyle()
  {
    return this.summaryStyle;
  }

  public void setSummaryStyle(Style paramStyle)
  {
    this.summaryStyle = paramStyle;
  }

  public int getRowTitleHeight()
  {
    return this.rowTitleHeight;
  }

  public void setRowTitleHeight(int paramInt)
  {
    this.rowTitleHeight = paramInt;
  }

  public int getColumnWidth()
  {
    return this.columnWidth;
  }

  public void setColumnWidth(int paramInt)
  {
    this.columnWidth = paramInt;
  }
}